]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
userMenu: Make presence chooser insensitive when offline
authorFlorian Müllner <fmuellner@gnome.org>
Tue, 12 Jun 2012 22:44:29 +0000 (00:44 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Mon, 20 Aug 2012 22:10:28 +0000 (00:10 +0200)
Setting an IM presence only makes sense when connected to the
network, reflect this by making the presence chooser insensitive
when no network is available.

https://bugzilla.gnome.org/show_bug.cgi?id=677982

js/ui/userMenu.js

index ce4f8ca1a058f3c3c1818e7a5464b5498725afec..f113664aa877b3fe67c90750a1d4e8cbd9612811 100644 (file)
@@ -216,6 +216,8 @@ const IMStatusChooserItem = new Lang.Class({
         this._networkMonitor = Gio.NetworkMonitor.get_default();
         this._networkMonitor.connect('network-changed',
             Lang.bind(this, function(monitor, available) {
+                this._IMAccountsChanged(this._accountMgr);
+
                 if (available && !this._imPresenceRestored)
                     this._restorePresence();
             }));
@@ -303,7 +305,8 @@ const IMStatusChooserItem = new Lang.Class({
         let accounts = mgr.get_valid_accounts().filter(function(account) {
             return account.enabled;
         });
-        this._combo.setSensitive(accounts.length > 0);
+        let sensitive = accounts.length > 0 && this._networkMonitor.network_available;
+        this._combo.setSensitive(sensitive);
     },
 
     _IMStatusChanged: function(accountMgr, presence, status, message) {